// @ts-ignore
/* eslint-disable */
import { request } from "@/utils/request";

/** 获取活动统计 获取用户活动相关的统计信息 GET /admin/stats/activity */
export async function adminStatsActivity(
  // 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
  params: API.AdminStatsActivityParams,
  options?: { [key: string]: any }
) {
  return request<API.Response & { data?: any }>(`/admin/stats/activity`, {
    method: "GET",
    params: {
      ...params,
    },
    ...(options || {}),
  });
}

/** 获取卡片统计 获取卡片相关的统计信息 GET /admin/stats/cards */
export async function adminStatsCards(
  // 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
  params: API.AdminStatsCardsParams,
  options?: { [key: string]: any }
) {
  return request<API.Response & { data?: any }>(`/admin/stats/cards`, {
    method: "GET",
    params: {
      ...params,
    },
    ...(options || {}),
  });
}

/** 导出统计数据 导出指定类型的统计数据为CSV或Excel格式 GET /admin/stats/export */
export async function adminStatsExport(
  // 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
  params: API.AdminStatsExportParams,
  options?: { [key: string]: any }
) {
  return request<string>(`/admin/stats/export`, {
    method: "GET",
    params: {
      // format has a default value: csv
      format: "csv",

      ...params,
    },
    ...(options || {}),
  });
}

/** 获取增长统计 获取用户、内容等的增长趋势统计 GET /admin/stats/growth */
export async function adminStatsGrowth(
  // 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
  params: API.AdminStatsGrowthParams,
  options?: { [key: string]: any }
) {
  return request<API.Response & { data?: any }>(`/admin/stats/growth`, {
    method: "GET",
    params: {
      ...params,
    },
    ...(options || {}),
  });
}

/** 获取概览统计 获取系统整体概览统计信息 GET /admin/stats/overview */
export async function adminStatsOverview(options?: { [key: string]: any }) {
  return request<API.Response & { data?: any }>(`/admin/stats/overview`, {
    method: "GET",
    ...(options || {}),
  });
}

/** 获取热门内容 获取热门卡片和主题的统计信息 GET /admin/stats/popular */
export async function adminStatsPopular(
  // 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
  params: API.AdminStatsPopularParams,
  options?: { [key: string]: any }
) {
  return request<API.Response & { data?: any }>(`/admin/stats/popular`, {
    method: "GET",
    params: {
      // limit has a default value: 10
      limit: "10",
      // type has a default value: all
      type: "all",
      ...params,
    },
    ...(options || {}),
  });
}

/** 获取实时统计 获取实时在线用户、活动等统计信息 GET /admin/stats/realtime */
export async function adminStatsRealtime(options?: { [key: string]: any }) {
  return request<API.Response & { data?: any }>(`/admin/stats/realtime`, {
    method: "GET",
    ...(options || {}),
  });
}

/** 获取留存统计 获取用户留存率统计信息 GET /admin/stats/retention */
export async function adminStatsRetention(
  // 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
  params: API.AdminStatsRetentionParams,
  options?: { [key: string]: any }
) {
  return request<API.Response & { data?: any }>(`/admin/stats/retention`, {
    method: "GET",
    params: {
      ...params,
    },
    ...(options || {}),
  });
}

/** 获取系统统计 获取系统性能和资源使用统计 GET /admin/stats/system */
export async function adminStatsSystem(options?: { [key: string]: any }) {
  return request<API.Response & { data?: any }>(`/admin/stats/system`, {
    method: "GET",
    ...(options || {}),
  });
}

/** 获取主题统计 获取主题相关的统计信息 GET /admin/stats/topics */
export async function adminStatsTopics(
  // 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
  params: API.AdminStatsTopicsParams,
  options?: { [key: string]: any }
) {
  return request<API.Response & { data?: any }>(`/admin/stats/topics`, {
    method: "GET",
    params: {
      ...params,
    },
    ...(options || {}),
  });
}

/** 获取用户统计 获取用户相关的统计信息 GET /admin/stats/users */
export async function adminStatsUsers(
  // 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
  params: API.AdminStatsUsersParams,
  options?: { [key: string]: any }
) {
  return request<API.Response & { data?: any }>(`/admin/stats/users`, {
    method: "GET",
    params: {
      ...params,
    },
    ...(options || {}),
  });
}
